import App from './App'

// #ifndef VUE3
import Vue from 'vue'
import './uni.promisify.adaptor'
Vue.config.productionTip = false
App.mpType = 'app'

// 导入uview
import uView from '@/uni_modules/uview-ui';

// 挂载全局。改造后的 uToast
import '@/utils/initToast';

// 调用setConfig方法，方法内部会进行对象属性深度合并，可以放心嵌套配置
// 需要在Vue.use(uView)之后执行
uni.$u.setConfig({
    // 修改$u.config对象的属性
    config: {
        // 修改默认单位为rpx，相当于执行 uni.$u.config.unit = 'rpx'
        unit: 'px'
    },
    // 修改$u.props对象的属性
    props: {
        // 修改radio组件的size参数的默认值，相当于执行 uni.$u.props.radio.size = 30
        radio: {
            size: 15
        },
        picker: {
            size: 30
        }
        // 其他组件属性配置
        // ......
    }
})

Vue.use(uView);


import LayoutPage from '@/components/layoutPage'
import InitPage from '@/components/initPage'
import EmptyPage from '@/components/emptyPage'
import ErrorPage from '@/components/errorPage'


// 注册全局组件
Vue.component('layout-apge', LayoutPage)
Vue.component('init-page', InitPage)
Vue.component('error-page', ErrorPage)
Vue.component('empty-page', EmptyPage)


import { filters } from '@/utils/filters.js'
// 定义全局自定义过滤器
Object.keys(filters).forEach(key => {
    Vue.filter(key, filters[key])
})

const app = new Vue({
    ...App
})
app.$mount()
// #endif

// #ifdef VUE3
import { createSSRApp } from 'vue'
export function createApp() {
    const app = createSSRApp(App)
    return {
        app
    }
}
// #endif
